package Logic;

import java.util.LinkedList;
import java.util.List;


import javax.swing.ImageIcon;

import GUI.GUI;
import Models.Dice;
import Tiles.End;
import Tiles.Movement;
import Tiles.Tile;
import Rules.LuckyRoll;
import Rules.GameEnd;;


public class Main {

	private static GameEngine ge;
	
	public static void main(String[] args) {
		ImageIcon i = new ImageIcon("src/tilePic.png");
		ImageIcon p1 = new ImageIcon("src/portal.png");
		
		List<Dice> dices = new LinkedList<Dice>();
		dices.add(new Dice(6,"Dice 1"));
		dices.add(new Dice(6,"Dice 2"));
		ge = new GameEngine(dices);
		
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Movement(0, 0, p1, 2));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Movement(0, 0, p1, -3));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new Tile(0, 0, i));
		ge.addTile(new End(0, 0, i));
		
		ge.addPlayer("Olb", new ImageIcon("src/blue.png"));
		ge.addPlayer("Vixen", new ImageIcon("src/red.png"));
		
		ge.addBoardRule(new LuckyRoll(ge, 3, 3));
		ge.addBoardRule(new GameEnd(ge, 1));
		
		ge.gameReady();
		
		new GUI(ge);
	}
}